package com.lantosec.hmrp.modules.report.service.impl;

import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.lantosec.hmrp.core.kit.PageVO;
import com.lantosec.hmrp.modules.report.mapper.ClinicalMedicationMapper;
import com.lantosec.hmrp.modules.report.service.IClinicalMedicationService;
import lombok.extern.log4j.Log4j2;
import org.springframework.context.annotation.Primary;
import org.springframework.stereotype.Service;

import java.util.Map;

@Service
@Primary
@Log4j2
public class ClinicalMedicationServiceImpl extends ServiceImpl<ClinicalMedicationMapper, Map> implements IClinicalMedicationService {

    @Override
    public PageVO<Map<String,Object>> getAntimicrobialsInpatientsList(PageVO<Map<String,Object>> page, String startTime, String endTime, String deptName, Integer dateState, Integer deptState) {
        return baseMapper.getAntimicrobialsInpatientsList(page,startTime,endTime,deptName,dateState,deptState);
    }

    @Override
    public PageVO<Map<String,Object>> getAntibioticsOutpatientsList(PageVO<Map<String,Object>> page, String startTime, String endTime, String deptName, String diagTreatType, Integer dateState, Integer deptState, Integer diagTreatState) {
        return baseMapper.getAntibioticsOutpatientsList(page,startTime,endTime,deptName,diagTreatType,dateState,deptState,diagTreatState);
    }

    @Override
    public PageVO<Map<String,Object>> getAntimicrobialUseList(PageVO<Map<String,Object>> page, String startTime, String endTime, String deptName, String docName, String diagTreatType, Integer dateState, Integer deptState, Integer docNameState) {
        return baseMapper.getAntimicrobialUseList(page,startTime,endTime,deptName,docName,diagTreatType,dateState,deptState,docNameState);
    }

    @Override
    public PageVO<Map<String,Object>> getStrengthAntimicrobialUseList(PageVO<Map<String,Object>> page, String startTime, String endTime, String deptName, Integer dateState, Integer deptState) {
        return baseMapper.getStrengthAntimicrobialUseList(page,startTime,endTime,deptName,dateState,deptState);
    }

    @Override
    public PageVO<Map<String,Object>> getRankingAntimicrobialUseList(PageVO<Map<String,Object>> page, String startTime, String endTime, String deptName, String drugName, Integer dateState, Integer deptState, Integer drugState) {
        return baseMapper.getRankingAntimicrobialUseList(page,startTime,endTime,deptName,drugName,dateState,deptState,drugState);
    }

    @Override
    public PageVO<Map<String, Object>> getOverLimitPrescriptionList(PageVO<Map<String,Object>> page, String startTime, String endTime, String deptName, String docName, String medRecordNo, Integer clinicSpecFlag, String prescriptCost) {
        return baseMapper.getOverLimitPrescriptionList(page,startTime,endTime,deptName,docName,medRecordNo,clinicSpecFlag,prescriptCost);
    }

    @Override
    public Map<String, Object> getOverPrescriptionDetail(String prescriptNoColl) {
        return baseMapper.getOverPrescriptionDetail(prescriptNoColl);
    }

    @Override
    public PageVO<Map<String, Object>> getReportDrugPctMonitorList(PageVO<Map<String, Object>> page, String startTime, String endTime, String deptName, String docName, String diagTreatType, Integer dateState, Integer deptState, Integer docNameState, Integer diagTreatState) {
        return baseMapper.getReportDrugPctMonitorList(page,startTime,endTime,deptName,docName,diagTreatType,dateState,deptState,docNameState,diagTreatState);
    }

    @Override
    public PageVO<Map<String, Object>> getReportBasicDrugMonitorList(PageVO<Map<String, Object>> page, String startTime, String endTime, String deptName, String diagTreatType, Integer dateState, Integer deptState, Integer diagTreatState) {
        return baseMapper.getReportBasicDrugMonitorList(page, startTime, endTime, deptName, diagTreatType, dateState, deptState, diagTreatState);
    }
}
